1. Technical Field
The present disclosure relates to wireless control and communications systems.
2. Related Art
Personal computing devices such as laptops, smart phones, and tablet computers (“smart devices”) have evolved rapidly to provide users with easy and intuitive ways to communicate between smart devices. Over the past several decades, investment and innovation in communication networks has made instant worldwide communication a low-cost utility.
However, this communication relies heavily on a user configuring their device for communication, and using an intermediary to establish communication between two or more devices.
In the field of control systems, particularly home automation (such as X-10, Zigbee and Z-wave), it is particularly difficult to configure the system to operate in conjunction with other smart devices. This gives rise to an interesting paradox: It is very hard to build something to turn on a light in the next room from your phone, but it is easy to call someone on the other side of the world.
Established security protocols (such as WiFi's WEP and WPA2 standards) exist for wireless communications, but adding a simple home automation client device (hereinafter commonly referred to as “target device”) on the network using these security protocols can be difficult. Most existing smart devices on the worldwide network include sophisticated input and output mechanisms (such as a keyboard, mouse, or touch screen). These I/O mechanisms make it relatively straightforward to configure a device for security because users are less likely to make errors entering security information and most devices on the worldwide network have multiple modes of feedback, such as a display screen, and speakers. For example, with a laptop, tablet or similar device trying to connect to a local WiFi network, it is assumed that a user will type in a WEP or WPA2 passphrase onto a physical keyboard or keyboard representation on a touch screen, and that the smart device will provide instant feedback about a potential problem in the case of typing error. Unfortunately, including such input/output mechanisms (such as a keyboard and screen) on common home, commercial and industrial electrical appliances (such as light bulbs, curling irons, kitchen appliances or automation robotic systems) is impractical and overly expensive, and this eliminates the feedback loop that users have come to rely upon to set up their smart devices on a wireless network.
At present, typical widely known configuration methods and systems for wireless devices without screens and keyboards (hereinafter also referred to as “partial function devices”) involve the wireless device broadcasting its own wireless network in configured mode. A user wishing to configure has to connect to this network and then transmit the required information (e.g., ssid of the WiFi network to connect to, passphrase, etc.) and may do so using the user's computer, smart phone, etc., along with communication input devices such as a keyboard, keypad, or touch screen (hereinafter also referred to as a “full function” device).
Processors, wireless radio chips, and the supporting wireless protocols are becoming cheaper and more reliable to a point where they can be economically embedded in common devices, but setting up the security on these embedded wireless systems remains a challenge. Often, transmitting the network name and associated passphrase or pass code remains a weak point in an automation system. On many current automation systems, this introduces a feedback delay in which a user can not be immediately informed of a setup error because the client must close the setup connection, and attempt to open the automation connection. For example, if a user miss-types a wireless network name or password, he will not know about the error until the target device opens back up the original communication channel.
Furthermore, when simple network-enabled devices lack keyboards and visual displays, it becomes much more difficult to troubleshoot what went wrong when the device cannot connect. When it becomes necessary to call a support line or interact via some other communication channel with a support person, that support person can have a difficult time ascertaining the cause of the setup problem.